package com.example.memento.model.table;

import com.mybatisflex.core.query.QueryColumn;
import com.mybatisflex.core.table.TableDef;

/**
 * 词典词条表定义
 * 用于MyBatis-Flex类型安全查询
 */
public class WordEntryTableDef extends TableDef {

    public static final WordEntryTableDef WORD_ENTRY = new WordEntryTableDef();

    public final QueryColumn ID = new QueryColumn(this, "id");
    public final QueryColumn WORD = new QueryColumn(this, "word");
    public final QueryColumn PRONUNCIATION = new QueryColumn(this, "pronunciation");
    public final QueryColumn TRANSLATION = new QueryColumn(this, "translation");
    public final QueryColumn DEFINITION = new QueryColumn(this, "definition");
    public final QueryColumn EXAMPLE = new QueryColumn(this, "example");
    public final QueryColumn PART_OF_SPEECH = new QueryColumn(this, "part_of_speech");
    public final QueryColumn SOURCE = new QueryColumn(this, "source");
    public final QueryColumn LANGUAGE = new QueryColumn(this, "language");
    public final QueryColumn TARGET_LANGUAGE = new QueryColumn(this, "target_language");
    public final QueryColumn TAGS = new QueryColumn(this, "tags");
    public final QueryColumn FREQUENCY = new QueryColumn(this, "frequency");
    public final QueryColumn CONFIDENCE = new QueryColumn(this, "confidence");
    public final QueryColumn CREATED_AT = new QueryColumn(this, "created_at");
    public final QueryColumn UPDATED_AT = new QueryColumn(this, "updated_at");

    public WordEntryTableDef() {
        super("", "word_entries");
    }

    public WordEntryTableDef(String schema, String name) {
        super(schema, name);
    }

    public WordEntryTableDef(String schema, String name, String alisa) {
        super(schema, name, alisa);
    }
}
